package com.lemzdo.mail.product.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

/**
 * 
 * 
 * @author lemZdo
 * @email sunlightcs@gmail.com
 * @date 2020-06-18 13:11:44
 */
@Data
@TableName("pms_category")
public class CategoryEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 鍒嗙被id
	 */
	@TableId
	private Long catId;
	/**
	 * 鍒嗙被鍚嶇О
	 */
	private String name;
	/**
	 * 鐖跺垎绫籭d
	 */
	private Long parentCid;
	/**
	 * 灞傜骇
	 */
	private Integer catLevel;
	/**
	 * 鏄惁鏄剧ず[0-涓嶆樉绀猴紝1鏄剧ず]
	 * @TableLogic 表示该字段是一个逻辑删除字段
	 * 可以自定义规则 value表示不删除  delval表示删除
	 */
	@TableLogic(value = "1",delval = "0")
	private Integer showStatus;
	/**
	 * 鎺掑簭
	 */
	private Integer sort;
	/**
	 * 鍥炬爣鍦板潃
	 */
	private String icon;
	/**
	 * 璁￠噺鍗曚綅
	 */
	private String productUnit;
	/**
	 * 鍟嗗搧鏁伴噺
	 */
	private Integer productCount;

	/**
	 * 自己新增的 不是数据库表里面的 子分类
	 * 需要加@TableField 注解  exist = false 表示该字段在表中不存在
	 *  @JsonInclude 为了让children为空的时候，不显示该属性 Include.NON_EMPTY
	 */
	@JsonInclude(JsonInclude.Include.NON_EMPTY)
	@TableField(exist = false)
	private List<CategoryEntity> children;


}
